Multi-access hybrid OFDM-CDMA system

ABSTRACT

In one aspect of a multiple-access OFDM-CDMA system, the data spreading is performed in the frequency domain by spreading each data stream with a respective spreading code selected from a set of available spreading codes. To support multiple access, system resources may be allocated and de-allocated to users (e.g., spreading codes may be assigned to users as needed, and transmit power may be allocated to users). Variable rate data for each user may be supported via a combination of spreading adjustment and transmit power scaling. Interference control techniques are also provided to improve system performance via power control of the downlink and/or uplink transmissions to achieve the desired level of performance while minimizing interference. A pilot may be transmitted by each transmitter unit to assist the receiver units perform acquisition, timing synchronization, carrier recovery, handoff, channel estimation, coherent data demodulation, and so on.

CLAIM OF PRIORITY

This application is a continuation application of, and claims thebenefit of priority from, U.S. patent application Ser. No. 11/494,126(now allowed), entitled “Multiple-Access Hybrid OFDM-CDMA System” andfiled Jul. 26, 2006, which is a divisional application of, and claimsthe benefit of priority from, U.S. patent application Ser. No.10/696,208, entitled “Multiple-Access Hybrid OFDM-CDMA System” and filedOct. 29, 2003, which is a divisional application of, and claims thebenefit of priority from, U.S. patent application Ser. No. 09/982,280,entitled “Multiple-Access Hybrid OFDM-CDMA System” and filed Oct. 18,2001 (now abandoned), all of which are assigned to the assignee of thisapplication and are fully incorporated herein by reference for allpurposes.

BACKGROUND

1. Field

The present invention relates generally to data communication, and morespecifically to a multiple-access hybrid OFDM-CDMA communication system.

2. Background

Wireless communication systems are widely deployed to provide varioustypes of communication such as voice, data, and so on. These systems maybe multiple-access systems capable of supporting communication withmultiple users (sequentially or simultaneously) by sharing the availablesystem resources (e.g., bandwidth and transmit power). Such systems maybe based on code division multiple access (CDMA), time division multipleaccess (TDMA), frequency division multiple access (FDMA), some othermultiple access technique, or a combination thereof. CDMA systems mayprovide certain advantages over other types of system, includingincreased system capacity. CDMA systems may also be designed toimplement known CDMA standards such as IS-95, cdma2000, IS-856, W-CDMA,and others.

An orthogonal frequency division modulation (OFDM) system effectivelypartitions the system bandwidth into a number of (M) sub-bands (orfrequency bins or sub-channels). At each time interval that may bedependent on the bandwidth of each sub-band, a modulation symbol may betransmitted on each of the M sub-bands.

In a direct sequence (DS) CDMA system, a narrowband signal is spreadover the entire system bandwidth in the time domain with a spreadingsequence. Example DS-CDMA systems include those that conform to IS-95,cdma2000, and W-CDMA standards. The spreading sequence may be apseudo-random noise (PN) sequence (e.g., for IS-95 and cdma2000) or ascrambling sequence (e.g., for W-CDMA). A DS-CDMA system providescertain advantages such as ease of supporting multiple access,narrow-band rejection, and so on.

As the system bandwidth increases to support higher data rates and/orunder certain operating conditions, a DS-CDMA system is more susceptibleto frequency selective fading (i.e., different amounts of attenuationacross the system bandwidth). For such a frequency-selective channel,time dispersion in the channel introduces inter-symbol interference(ISI), which can degrade system performance.

There is therefore a need in the art for a multiple-access CDMA-basedsystem capable of mitigating ISI, supporting flexible operation, andproviding improved system performance.

SUMMARY

Aspects of the invention provide techniques for implementing amultiple-access hybrid OFDM-CDMA system that may be used to providewireless voice and/or data communications. The hybrid OFDM-CDMA systemcombines the benefits of OFDM with those of CDMA to provide numerousadvantages.

In one aspect, the data spreading at a transmitter unit (e.g., a basestation or a terminal) is performed in the frequency domain instead ofthe time domain. This may be achieved by spreading each data stream(e.g., for a particular user) with a respective spreading code (selectedfrom a set of available spreading codes) prior to an inverse fastFourier transform operation to derive OFDM symbols. The frequency domainspreading may be used to combat frequency selective fading and tomitigate inter-symbol interference (ISI) at a receiver unit.

To support multiple access, the available system resources may beallocated and de-allocated to users (e.g., as necessary and ifavailable). For example, spreading codes may be assigned to users asneeded, transmit power may be allocated to users, and so on. Varioustechniques are provided to support variable rate data for each user viaa combination of spreading adjustment and transmit power scaling.

Various interference control techniques are provided to improve systemperformance. For example, power control may be implemented for thedownlink also know as the (forward link) and/or uplink also known as the(reverse link) to achieve the desired level of performance whileminimizing the amount of interference to other transmissions. A pilotmay also be transmitted by each transmitter unit to assist the receiverunits perform a number of functions such as acquisition, timingsynchronization, carrier recovery, handoff, channel estimation, coherentdata demodulation, and so on.

Various aspects and embodiments of the invention are described infurther detail below. The invention further provides methods, receiverunits, transmitter units, terminals, base stations, systems, and otherapparatus and elements that implement various aspects, embodiments, andfeatures of the invention, as described in further detail below.

BRIEF DESCRIPTION OF THE DRAWINGS

The features, nature, and advantages of the present invention willbecome more apparent from the detailed description set forth below whentaken in conjunction with the drawings in which like referencecharacters identify correspondingly throughout and wherein:

FIG. 1 is a diagram of a multiple-access OFDM-CDMA system capable ofimplementing various aspects and embodiments of the invention;

FIG. 2 is a simplified block diagram of an embodiment of a base stationand two terminals;

FIG. 3 is a block diagram of an embodiment of a modulator that may beused for the downlink;

FIG. 4 is a block diagram of an embodiment of a demodulator that may beused for the downlink;

FIG. 5 is a block diagram of an embodiment of a modulator that may beused for the uplink;

FIG. 6 is a block diagram of an embodiment of a demodulator that may beused for the uplink;

FIG. 7 is a diagram of a power control mechanism that may be used tocontrol the transmit power of a downlink or uplink transmission; and

FIG. 8 is a block diagram of a specific embodiment of a portion of thedownlink and uplink power control mechanisms implemented at a terminal.

DETAILED DESCRIPTION

FIG. 1 is a diagram of a multiple-access OFDM-CDMA system 100 thatsupports a number of users and is capable of implementing variousaspects and embodiments of the invention. System 100 providescommunication for a number of coverage areas 102 a through 102 g, eachof which is serviced by a corresponding base station 104 (which may alsobe referred to as an access point, a node B, or some other terminology).The base station and/or its coverage area are also often referred to asa cell. A cell may also be partitioned into multiple (e.g., three)sectors, each of which may be associated with a respective (directional)beam pattern for the downlink. All sectors of the same cell aretypically serviced by a single base station. For a given terminal, a“serving” cell/sector is one in active communication with the terminal.

As shown in FIG. 1, various terminals 106 are dispersed throughout thesystem, and each terminal may be fixed (i.e., stationary) or mobile.Each terminal may communicate with one or possibly more cells/sectors onthe downlink and/or uplink at any given moment depending on whether ornot it is active, whether or not it is in “soft handoff” or “softerhandoff”, and so on. Soft handoff refers to concurrent communicationwith two or more cells to increase reliability, and softer handoffrefers to concurrent communication with two or more sectors of the samecell to increase reliability.

The downlink (forward link) refers to transmission from the base stationto the terminal, and the uplink (reverse link) refers to transmissionfrom the terminal to the base station. In FIG. 1, base station 104 acommunicates with terminal 106 a, base station 104 b communicates withterminals 106 b, 106 c, 106 d, and 106 i, base station 104 ccommunicates with terminals 106 e, 106 f, and 106 g, and so on. Terminal106 g is in soft handoff with base stations 104 c and 104 d, terminal106 i is in soft handoff with base stations 104 b, 104 d, and 104 e, andterminal 1061 is in soft handoff with base stations 104 f and 104 g.

System 100 may also be designed to implement any number of standards anddesigns for CDMA, TDMA, FDMA, and other multiple access schemes. TheCDMA standards include the IS-95, cdma2000, IS-856, W-CDMA, and TS-CDMAstandards, and the TDMA standards include the Global System for MobileCommunications (GSM) standard. These standards are known in the art andincorporated herein by reference.

FIG. 2 is a simplified block diagram of an embodiment of base station104 and two terminals 106, which are capable of implementing variousaspects and embodiments of the invention. Each terminal 106 mayconcurrently communicate with multiple base stations 104 when in softhandoff (not shown in FIG. 2 for simplicity).

On the downlink, at base station 104, various types of traffics such asuser-specific data from a data source 208, signaling, and so on, areprovided to a transmit (TX) data processor 210, which formats, possiblyinterleaves, and encodes the traffics based on one or more codingschemes to provide coded data. Each coding scheme may include anycombination of cyclic redundancy check (CRC), convolutional coding,Turbo coding, block coding, and other coding, or no coding at all.Typically, different types of traffic are coded using different codingschemes. In a specific embodiment, the user data may be partitioned intoframes (or packets). For each frame, the data may be used to generate aset of CRC bits, which are appended to the data, and the data and CRCbits may then be interleaved and coded with a convolutional code or aTurbo code to generate the coded data for the frame.

The coded data is then provided to a modulator (MOD) 220 and furtherprocessed to generate modulated data. In a specific embodiment, theprocessing by modulator 220 includes (1) spreading the coded data foreach user with a respective set of one or more spreading codes, (2)transforming the spread data, (3) scaling the transformed data for eachuser with a respective gain, (4) combining the scaled data for all usersand other data for other channels (e.g., pilot, sync, and pagingchannels), and (5) covering the combined data with a cover code. Theprocessing by modulator 220 is described in further detail below.

The modulated data is then provided to one or more transmitters (TMTR)222, one transmitter for each antenna used to transmit the data. Eachtransmitter 222 converts the received data into one or more analogsignals and further conditions (e.g., amplifies, filters, and quadraturemodulates) the analog signals to generate a respective downlinkmodulated signal suitable for transmission over a wireless link. Eachdownlink modulated signal is then transmitted via a respective antenna224 to the terminals.

At each terminal 106, one or more downlink modulated signals from one ormore base stations are received by one or more antennas 252. Thereceived signal from each antenna 252 is provided to a respectivereceiver (RCVR) 254, which conditions (e.g., filters, amplifies, anddownconverts) the received signal and digitizes the conditioned signalto provide a respective stream of data samples. A demodulator (Demod)260 then receives and processes the streams of data samples from allreceivers 254 to provide demodulated symbols (i.e., demodulated data).In a specific embodiment, the processing by demodulator 260 includes (1)uncovering the received data samples with the cover code associated withthe cell/sector being demodulated, (2) transforming the uncovered datasamples, (3) despreading the transformed samples, and (4) combining thedespread samples derived from multiple receive antennas (if available).The processing by demodulator 260 is described in further detail below.

A receive (RX) data processor 262 then decodes the demodulated symbolsto recover the user-specific data transmitted on the downlink. Theprocessing by demodulator 260 and RX data processor 262 is complementaryto that performed by modulator 220 and TX data processor 210,respectively, at base station 104.

On the uplink, at terminal 106, various types of traffics such asuser-specific data from a data source 276, signaling, and so on, areprovided to a TX data processor 278, which processes the different typesof traffics in accordance with their respective coding schemes toprovide coded data. The coded data is further processed (e.g., spread)by a modulator 280 to provide modulated data, which is provided to oneor more transmitters 254. Each transmitter 254 conditions the modulateddata to generate a respective uplink modulated signal, which is thentransmitted via an associated antenna 252 to the base stations.

At each base station 104, the uplink modulated signals from one or moreterminals are received by antennas 224. The received signal from eachantenna 224 is provided to a receiver 222, which conditions anddigitizes the received signal to provide a respective stream of datasamples. The data samples are then processed (e.g., despread) by ademodulator 240 and decoded (if necessary) by an RX data processor 242to recover the data transmitted by the terminals.

Controllers 230 and 270 direct the operation at the base station and theterminal, respectively.

Downlink Modulator and Demodulator

FIG. 3 is a block diagram of an embodiment of a modulator 220 a that maybe used for the downlink, and is one embodiment of modulator 220 in FIG.2. Modulator 220 a receives from TX data processor 210 one or more datastreams for one or more users. Each user data stream, d_(u)(k), isprovided by to a respective frequency-domain spreader 310.

In an embodiment, the user data comprises a stream of coded bits. Eachcoded bit may have a binary value of either zero (“0”) or one (“1”),which may then be mapped to a value of −1 or +1, respectively, for thespreading. In another embodiment, the user data comprises a stream ofmodulation symbols. For this embodiment, a symbol mapping elementreceives the coded data for the user, groups each set of NB coded bitsto form a non-binary symbol, and then maps each non-binary symbol to apoint in a signal constellation corresponding to a particular modulationscheme (e.g., QPSK, M-PSK, M-QAM, or some other scheme) selected for theuser. Each mapped signal point corresponds to a modulation symbol, andthe symbol mapping element would provide a stream of modulation symbols.The user data thus comprises a stream of data symbols, where each datasymbol may be a coded bit or a modulation symbol.

Each frequency-domain spreader 310 also receives a set of one or morespreading codes for the received data stream. For simplicity, thefollowing description assumes one data stream for each user and onespreading code for each spreader 310. The spreading code for user u is asequence of M symbols and may be represented as:c _(u) ={c _(u)(0), c _(u)(1), . . . , c _(u)(M−1)},where each symbol c_(u)(m) of the spreading code may be a real or acomplex value. The spreading code length M represents the spreadingratio for the user data. The spreading codes may be orthogonal codes(e.g., the Walsh codes used in IS-95 and cdma2000) or the orthogonalvariable spreading factor (OVSF) codes used in W-CDMA. The spreadingcodes may also be codes with pseudo-orthogonal properties (e.g., the QOFcodes in cdma2000), pseudo-random noise (PN) sequences at different chipoffsets, or non-orthogonal codes. In a specific embodiment, thespreading codes used for the downlink are Walsh codes of length M, andeach chip of a Walsh sequence corresponds to one symbol of the spreadingcode.

Within each frequency-domain spreader 310, the user data is provided toa set of M (complex) multipliers 312 a through 312 m. Each multiplier312 also receives a respective symbol c_(u)(m) of the spreading code c_(u) assigned to user u. At each time interval k, a data symbol for useru, d_(u)(k), is provided to all M multipliers 312. Each multiplier 312multiplies the received data symbol, d_(u)(k), with the spreading codesymbol, c_(u)(m), and provides a respective spread symbol to an inversefast Fourier transformer (IFFT) 320. For each time interval k, IFFT 320receives M spread symbols from all M multipliers 312, performs aninverse fast Fourier transform on the received symbols, and provides asequence of NIFFT transformed samples, x_(u)(n,k), that collectivelycomprise an OFDM symbol for the data symbol, d_(u)(k). The transformedsamples, x_(u)(n,k), may be expressed as:

$\begin{matrix}{{{x_{u}\left( {n,k} \right)} = {\frac{1}{M}{\sum\limits_{m = 0}^{M - 1}{{d_{u}(k)} \cdot {c_{u}(m)} \cdot {\mathbb{e}}^{{- {({j\; 2\pi})}}\frac{mn}{N_{IFFT}}}}}}},{{{for}\mspace{14mu} n} = 0},1,\ldots\mspace{14mu},{N_{IFFT} - 1},} & {{Eq}.\mspace{14mu}(1)}\end{matrix}$where N_(IFFT) is the dimension of the IFFT and also represents thenumber of sub-bands (or frequency bins or sub-channels) for the OFDMscheme. Other transformations may also be used and are within the scopeof the invention. For example, wavelet or some other ortho-normalfunctions may be used for other OFDM-like schemes.

OFDM is described in further detail in a paper entitled “MulticarrierModulation for Data Transmission: An Idea Whose Time Has Come,” by JohnA. C. Bingham, IEEE Communications Magazine, May 1990, which isincorporated herein by reference.

In general, the length of the spreading code c _(u) is selected to beequal to or less than the dimension of the IFFT (i.e., M≦N_(IFFT)). Whenthe spreading code length is less than the IFFT dimension (i.e.,M<N_(IFFT)), the (N_(IFFT)−M) “left-over” sub-bands may be used forother functions such as, for example, guard-band tones, pilot, overheadchannel(s), power control, signaling, and so on. In a specificembodiment, the spreading code length is selected to be equal to theIFFT dimension (i.e., M=N_(IFFT)).

The OFDM symbols, x_(u)(n,k), from IFFT 320 are provided to a cyclicprefix insertion unit 322, which appended a cyclic prefix to each OFDMsymbol to form a corresponding transmission symbol, S_(u)(n,k). Inparticular, the cyclic prefix insertion may be performed by duplicatingthe first L transformed samples of the OFDM symbol and appending thesesamples at the end of the OFDM symbol. The transmission symbol,s_(u)(n,k), may thus be expressed as:

$\begin{matrix}{{s_{u}\left( {n,k} \right)} = \left\{ \begin{matrix}{x_{u}\left( {n,k} \right)} & {{{{for}\mspace{14mu} n} = 0},1,\ldots\mspace{14mu},{N_{IFFT} - 1}} \\{x_{u}\left( {{n - N_{IFFT}},k} \right)} & {{{{for}\mspace{14mu} n} = N_{IFFT}},\ldots\mspace{14mu},{N_{IFFT} + L - 1.}}\end{matrix} \right.} & {{Eq}.\mspace{14mu}(2)}\end{matrix}$

The cyclic prefix may be used to preserve orthogonality among the NIFFTsub-channels in the presence of time dispersion in the communicationchannel. In this case, the duration of the cyclic prefix, L, is selectedto be greater than or equal to the maximum delay spread of thecommunication channel.

The transmission symbols, s_(u)(n,k), for each user are then provided toa respective multiplier 330, which also receives a gain variable,g_(u)(k), associated with the user. The gain variable, g_(u)(k), isrepresentative of the total gain for the user and may be expressed as:g _(u)(k)=g _(u) ^(pc)(k)·g _(u) ^(rate)(k)  Eq. (3)where

g_(u) ^(pc)(k) is a gain variable used to adjust the downlink transmitpower for user u at time interval k, and is used for downlink powercontrol; and

g_(u) ^(rate)(k) is a gain variable used to control the downlinktransmit power for user u at time k, and is used to account for variablerate data.

The rate control gain variable, g_(u) ^(rate)(k), may be used toaccommodate the variable nature of a data source (e.g., a vocoder) forthe user data. The rate control gain is typically proportional to theratio of the data rate, r_(u)(k), at time interval k to the maximum datarate, r_(max), associated with a particular code channel (i.e., g_(u)^(rate)(k)∝r_(u)(k)/r_(max)). The rate control gain variable may thus beused to perform the power scaling function for variable rate data, asdescribed below. The gain variable, g_(u)(k), may also incorporate othergain variables used for other functions, and this is within the scope ofthe invention.

Each multiplier 330 scales the received transmission symbols,S_(u)(n,k), with the gain variable, g_(u)(k), and provides scaledtransmission symbols to a summer 332. For each time interval k, summer332 receives and combines the scaled transmission symbols from allenabled multipliers 330 and other data for other overhead channels(e.g., pilot, broadcast, paging, sync, and power control channels) toprovide combined data. For example, the scaled pilot is provided by amultiplier 330 p and combined with the other data by summer 332. Amultiplier 334 then receives and multiplies the combined data with acover code, p_(j)(n), to provide modulated data, y(n,k. Multiplier 334effectively covers the combined data with the cover code assigned to thecell/sector.

In an embodiment, the cover code, p_(j)(n), is unique to the j-th cellor sector serviced by the base station, and allows the terminals toidentify the individual cells/sectors. The cover code may be a PNsequence (e.g., the short PN sequences of length 32,768 used in IS-95and cdma2000), a scrambling sequence (e.g., the scrambling codes used inW-CDMA), or some other sequences. In general, an objective of a goodcover code is to render the signals despread from another base stationwhite (i.e., low correlation).

As shown in FIG. 3, a pilot is transmitted along with the user data andother overhead data. The pilot is typically generated based on a knowndata pattern (e.g., a sequence of all zeros) and processed in a knownmanner. This then allows the terminals to more easily recover thetransmitted pilot. The recovered pilot may then be used at the terminalsfor various functions such as acquisition, timing synchronization,carrier recovery, handoff, channel estimation, coherent datademodulation, and so on. Various schemes may be used to transmit thepilot and are described in further detail below.

FIG. 4 is a block diagram of an embodiment of a demodulator 260 a thatmay be used for the downlink and is one embodiment of demodulator 260 inFIG. 2. As shown in FIG. 2, each terminal in the system may be equippedwith one or multiple receive antennas, and each antenna provides arespective received signal that is conditioned and digitized by anassociated receiver 254 to provide a respective stream of (complex) datasamples.

In an embodiment, a frequency control loop is used to acquire and trackthe carrier frequency of each received signal. The frequency acquisitionand tracking may be performed in the analog domain by adjusting thefrequency of a local oscillator (LO) signal used to downconvert thereceived signal from radio frequency (RF) to baseband. Alternatively,the frequency acquisition and tracking may be performed in the digitaldomain by adjusting the frequency of a locally generated sinusoidalsignal used to digitally rotate (and thus frequency translate) the datasamples. The frequency translation in the digital domain may beperformed by a digital rotator (i.e., a complex multiplier). Thefrequency control loop attempts to remove frequency error in thedownconversion of the received signal from RF to baseband, including anyfrequency offset due to Doppler frequency shift resulting from movementby a mobile terminal. For simplicity, the complex data samples providedby receivers 254 are assumed to have a mean Doppler frequency error of 0Hz.

In an embodiment, a time control loop is used to acquire and track thetiming of each received signal so that data samples are provided withthe proper chip timing. Time acquisition and tracking may be performedby adjusting the phase of a clock signal used to digitize the receivedsignal. Alternatively, the time acquisition and tracking may beperformed by resampling the received data samples. For simplicity, thecomplex data samples provided by receivers 254 are assumed have theproper chip timing.

The frequency and time control loops may be implemented in variousmanners, as is known in the art and not described herein. The receiversmay further derive OFDM symbol timing (e.g., based on the recoveredpilot or some other mechanism) and provide the necessary timing signalsto demodulator 260 a.

Within demodulator 260 a, a stream of data samples from each receiveantenna is provided to a respective frequency-domain despreader 410.Within each despreader 410, a multiplier 412 uncovers (i.e., multiplies)the received data samples with the (complex-conjugate) cover code,p_(j)*(n), associated with the cell/sector being demodulated. Theuncovered data samples are then provided to a buffer 414.

For each time interval k, buffer 414 receives M+L uncovered samplescorresponding to a transmission symbol and provides M samplescorresponding to a complete OFDM symbol. A fast Fourier transformer(FFT) 420 receives the M uncovered samples from buffer 414, performs anNFFT-point fast Fourier transform on the received samples, and providesNFFT transformed samples. The dimension of the Fourier transform istypically equal to the dimension of the inverse Fourier transform (i.e.,N_(FFT)=N_(IFFT)) used at the transmitter unit, and is larger or equalto the size of the OFDM symbol (i.e., N_(FFT)≧M). In an embodiment,M=N_(FFT).

The time control loop provides the necessary OFDM symbol timing for theprocessing at the receiver unit. Synchronization for the OFDM symbolsmay be derived, for example, based on the pilot. The symbol timingprovided by the time control loop may be used to select the samples foreach FFT window. If a cyclic prefix is used, the L additional samplesallow for some flexibility in the alignment the FFT window within theOFDM symbol duration.

The transformed samples from FFT 420 are provided to a set of M(complex) multipliers 422 a through 422 m. Each multiplier 422 alsoreceives a respective coefficient, w_(u)(m), in a sequence ofdespreading coefficients derived for the receive antenna for user u. Forcoherent detection, the despreading coefficient for each sub-band may beexpressed as:w _(u)(m)=[{circumflex over (h)}(m)·(m)]*, for m=0, 1, . . . , M−1,  Eq.(4)where ĥ(m) is an estimate of the complex channel gain for the m-thsub-band. The channel response, h(m), may be estimated based on thepilot or the demodulated data, or based on some other techniques. Thedespreading coefficients shown in equation (4) represent one possibledetection strategy. Other detection strategies that may provide improvedperformance for a frequency selective fading channel may also be used.

In an OFDM-CDMA system, loss of orthogonality occurs at the receiverunit whenever the channel is frequency selective (i.e., differentamounts of attenuation for different sub-bands). In this case, in thefrequency domain, the spreading codes are subjected to variableattenuation across different symbols of the codes (e.g., differentattenuation for different chips of the Walsh sequences). This thendestroys the relative orthogonality among the spreading codes andresults in residual interference after the despreading/correlationoperation at the receiver unit.

The receiver unit may attempt to restore orthogonality among thespreading codes by “inverting” the channel prior to the despreading. Thechannel inversion is performed per sub-band and typically precedes thedespreading, which includes integration to reduce the bandwidth. Thechannel inversion operation (which is also referred to as a zero forcingoperation) requires knowledge of the channel response, h(m), or itsestimate, ĥ(m). To achieve the channel inversion, the despreadingcoefficient for each sub-band may be expressed as:

$\begin{matrix}{{{w_{u}(m)} = \frac{\left\lbrack {{\hat{h}(m)} \cdot {c_{u}(m)}} \right\rbrack^{*}}{{{\hat{h}(m)}}^{2}}},{{{for}\mspace{14mu} m} = 0},1,\ldots\mspace{14mu},{M - 1.}} & {{Eq}.\mspace{14mu}(5)}\end{matrix}$

The performance of a demodulator based on the despreading coefficientsshown in equation (5) may be poor for some operating scenarios. Forexample, in the sub-bands where the signal-to-noise-plus-interferenceratio (SNR) is low, the weights ĥ(m)/|ĥ(m)|² tend to enhance the noiseand interference. For improved performance, a minimum mean square error(MMSE) based despreader may be employed where the despreadingcoefficients may be expressed as:

$\begin{matrix}{{{w_{u}(m)} = \frac{\left\lbrack {{\hat{h}(m)} \cdot {c_{u}(m)}} \right\rbrack^{*}}{N_{o} + {{\hat{h}(m)}}^{2}}},{{{for}\mspace{14mu} m} = 0},1,\ldots\mspace{14mu},{M - 1},} & {{Eq}.\mspace{14mu}(6)}\end{matrix}$where N_(o) is the thermal noise power.

Each multiplier 422 multiplies the received transformed samples with thereceived despreading coefficient to provide a despread sample. For eachtime interval k, a summer 424 receives and sums the despread samplesfrom all M multipliers 422 to provide a recovered symbol, y_(u)(k).

If multiple receive antennas and demodulation paths are available at theterminal (e.g., terminal 106 n in FIG. 2), then the data sample streamfor each antenna may be processed as described above to provide arespective stream of recovered symbols for that diversity branch. Ifmultiple serving cells/sectors are transmitting to the terminal (e.g.,for soft/softer handoff), then the received data samples are initiallyuncovered with the cover codes associated with these cells/sectors. Theset of despreading coefficients for each diversity branch is alsoderived based on the channel response estimated for the user and forthat diversity branch. The streams of recovered symbols from allavailable diversity branches are then provided to a summer 426. For eachtime interval k, summer 426 (soft) combines the recovered symbols fromall diversity branches to provide a corresponding demodulated symbol,z_(u)(k). The demodulated symbols (i.e., the demodulated data) for useru are then provided to RX data processor 262.

For an OFDM-CDMA system, it is not a requirement to use a cyclic prefix.When a cyclic prefix is used, the delay spread in the received signal isaccounted for by the repeated portion of the OFDM symbol, and a rakereceiver implementation is not required at the receiver unit. This maysimplify the receiver design. However, when a cyclic prefix is not used,a (frequency-domain) rake receiver may be used to perform thedespreading/correlation operation at the delays corresponding to theimpulse response of the communication channel. For this frequency-domainrake receiver, a number of (M) received data samples corresponding tothe OFDM symbol duration and a number of (L) received data samplescorresponding to the maximum expected delay spread for the communicationchannel may be stored for each OFDM symbol. M samples may then beretrieved from among the M+L stored samples and processed as describedabove. The specific samples to be retrieved are determined by the timingassociated with the received signal (i.e., the arrival time of thetransmitted signal at the receiver unit).

Uplink Modulator and Demodulator

FIG. 5 is a block diagram of an embodiment of a modulator 280 a that maybe used for the uplink, and is one embodiment of modulator 280 in FIG.2. Modulator 280 a receives from TX data processor 278 user data to betransmitted to one or more serving cells/sectors. This user datacomprises a stream of data symbols, each of which may be a coded bit ora modulation symbol, as described above.

Within modulator 280 a, the user data stream is provided to afrequency-domain spreader 510, which also receives a spreading codeassociated with the user. The uplink spreading code for user u comprisesa sequence of M samples and may be represented as:C _(u) ={C _(u)(0), C _(u) (1), . . . , C _(u)(M−1)}.Again, various types of codes may be used for the uplink spreadingcodes.

In an embodiment, the spreading code used for the uplink for user u isunique to that user but is not necessarily orthogonal to the spreadingcodes used by the other users. In particular, as long as the spreadingcodes are uncorrelated with each other, then processing gain may beobtained relative to the other users and high performance may berealized. Moreover, the uplink spreading codes may be different than theones used for the downlink. In a specific embodiment, the spreadingcodes used for the uplink are also Walsh codes of length M.

In cases where the uplink spreading codes are mutually orthogonal,multipath and/or different propagation delays destroy the orthogonalityproperty of the received signals at the receiver unit (i.e., the basestation for the uplink). One technique for maintaining orthogonality inthe presence of multipath is to assign different sub-bands to differentusers. When the user data is transmitted over only a fraction of thetotal uplink bandwidth, the full processing gain is not realized on aper OFDM symbol basis and the frequency diversity of a wideband systemis not fully realized.

For simplicity, upper case notations are used for the uplink andcorrespond to the lower case notations used for the downlink (e.g., C_(u) and c _(u) respectively represent the uplink and downlink spreadingcodes).

Within spreader 510, the user data is provided to a set of M (complex)multipliers 512 a through 512 m. Each multiplier 512 also receives arespective symbol C_(u)(m) of the spreading code assigned to user u. Ateach time interval k, each multiplier 512 multiplies the received datasymbol D_(u)(k) with the spreading code symbol, C_(u)(m), and provides arespective spread symbol to an IFFT 520. For each time interval k, IFFT520 receives M spread symbols from all M multipliers 512, performs aninverse fast Fourier transform on the received symbols, and provides asequence of NIFFT transformed samples, X_(u)(n,k), that collectivelycomprise an OFDM symbol for the data symbol, D_(u)(k).

The OFDM symbols, X_(u)(n,k), from IFFT 520 are then provided to acyclic prefix insertion unit 522, which appends a cyclic prefix to eachOFDM symbol to form a corresponding transmission symbol, S_(u)(n,k). Thetransmission symbols are then scaled by a gain variable, G_(u)(k), by amultiplier 530 a. The gain variable, G_(u)(k), is representative of thetotal uplink gain for the user, and includes the power control gain,G_(u) ^(pc)(k), the rate control gain, G_(u) ^(rate)(k), and so on. Asummer 532 receives and combines the scaled transmission symbols frommultiplier 530 a and other data for other overhead (e.g., pilot)channels to provide the modulated data, Y(n,k). As shown in FIG. 5, theuplink pilot for user u is scaled by a pilot gain variable, G_(pu)(k),by a multiplier 530 p and combined with the scaled transmission symbols.Although not shown in FIG. 5, the combined data from summer 532 may alsobe covered with a cover code that may be unique to the user or may becommon to all users.

FIG. 6 is a block diagram of an embodiment of a demodulator 240 a thatmay be used for the uplink and is one embodiment of demodulator 240 inFIG. 2. A number of antennas 224 may be used to receive the uplinkmodulated signals from one or more terminals, and each antenna providesa respective received signal to an associated receiver 222. Eachreceiver 222 conditions and digitizes the received signal to provide arespective stream of complex data samples, R^(i)(k).

Within demodulator 240 a, each received data sample stream is providedto a respective frequency-domain despreader 610. Within each despreader610, a buffer 614 receives M+L samples for each time interval k (ifcyclic prefix is used), and provides M samples corresponding to acomplete OFDM symbol. An FFT 620 receives the M samples from buffer 614,performs an NFFT-point fast Fourier transform on the received samples,and provides NFFT transformed samples. For simplicity, the OFDM symbollength is selected to be equal to the FFT dimension (i.e., M=N_(FFT)),although this is not a required condition as described above.

The transformed samples from FFT 620 are provided to a set of M(complex) multipliers 622 a through 622 m. Each multiplier 622 alsoreceives a respective coefficient, W_(u) ^(i)(m), in a sequence ofdespreading coefficients derived for the i-th receive antenna for useru. For coherent detection, the despreading coefficient for each sub-bandmay be expressed as:W _(u) ^(i)(m)∝[ĥ _(u) ^(i)(m)·C _(u)(m)]*, for m=0, 1, . . . ,M−1,  Eq. (7)where ĥ_(u) ^(i)(m) is an estimate of the complex channel gain for useru for the m-th sub-band on the i-th diversity branch. Similar to thedownlink, the despreading coefficients may be derived as:

$\begin{matrix}{{{W_{u}^{i}(m)} = \frac{\left\lbrack {{{\hat{h}}_{u}^{i}(m)} \cdot {C_{u}(m)}} \right\rbrack^{*}}{{{{\hat{h}}_{u}^{i}(m)}}^{2}}},{{{for}\mspace{14mu} m} = 0},1,\ldots\mspace{14mu},{M - 1},} & {{Eq}.\mspace{14mu}(8)}\end{matrix}$or as:

$\begin{matrix}{{{W_{u}^{i}(m)} = \frac{\left\lbrack {{{\hat{h}}_{u}^{i}(m)} \cdot {C_{u}(m)}} \right\rbrack^{*}}{N_{o} + {{{\hat{h}}_{u}^{i}(m)}}^{2}}},{{{for}\mspace{14mu} m} = 0},1,\ldots\mspace{14mu},{M - 1},} & {{Eq}.\mspace{14mu}(9)}\end{matrix}$

As shown in equations (7) through (9), the despreading coefficients area function of the user's spreading code, C_(u)(m), and the channelresponse estimates, ĥ_(u) ^(i)(m), associated with each diversity branchused for the user.

Each multiplier 622 multiplies the received transformed sample with thereceived despreading coefficient to provide a scaled sample. For eachtime interval k, summer 624 receives and sums the scaled samples fromall M multipliers 622 to provide a recovered symbol, Y_(u) ^(i)(k), foruser u for the i-th diversity branch.

If multiple diversity branches are used for user u, then the recoveredsymbols, Y_(u) ^(i)(k), from all diversity branches for user u areprovided to a summer 626. For each time interval k, summer 626 combinesall recovered symbols for user u to provide a demodulated symbol,Z_(u)(k), which is then provided to RX data processor 242. The diversitycombining may be performed, for example, for a terminal in softerhandoff with multiple sectors of the same cell, since these sectors aretypically serviced by a single base station.

Power Control

A power control mechanism may be implemented for each of the downlinkand uplink to reduce interference and improve system throughput. Thepower control mechanisms for the downlink and uplink may be implementedin various manners, and different mechanisms may also be used for thedownlink and uplink. A specific power control mechanism is describedbelow, but other mechanisms may also be used and are within the scope ofthe invention.

FIG. 7 is a diagram of a power control mechanism 700 that includes aninner loop power control 710 operating in conjunction with an outer looppower control 720. As shown in FIG. 7, inner loop 710 operates betweenthe transmitter and receiver units, and outer loop 720 operates at thereceiver unit.

Inner loop 710 is a (relatively) fast loop that attempts to maintain thesignal quality of a transmission, as received at the receiver unit, asclose as possible to a target SNR, which is often referred to as the SNRsetpoint (or simply, the setpoint). One inner loop may be maintained foreach data stream to be independently power controlled.

The inner loop power adjustment for a particular data stream istypically achieved by (1) estimating the signal quality of the datastream as received at the receiver unit (block 712), (2) comparing thereceived signal quality estimate against the setpoint (block 714), and(3) sending power control information back to the transmitter unit. Thereceived signal quality may be estimated based on the data stream to bepower controlled, a pilot associated with the data stream, or some othertransmission having an established relationship with the data stream tobe power controlled. In an embodiment, the power control information isin the form of an “UP” command to request an increase in the transmitpower or a “DOWN” command to request a decrease in the transmit power.Each UP and DOWN command may correspond to a change in transmit powerof, e.g., +0.5 dB and −0.5 dB, respectively. The transmitter unit mayadjust the transmit power for the data stream accordingly (block 716)each time it receives a power control command. A power control commandmay be sent for each OFDM symbol or each frame, or for some other unitof time.

Due to path loss in the communication channel (cloud 718) that typicallyvaries over time, especially for a mobile terminal, the received signalquality at the receiver unit continually fluctuates. Inner loop 710attempts to maintain the received signal quality at or near the setpointin the presence of changes in the communication channel.

Outer loop 720 is a (relatively) slower loop that continually adjuststhe setpoint such that a particular level of performance is achieved forthe data stream being power controlled. The desired level of performanceis typically a particular target frame error rate (FER), packet errorrate (PER), or some other performance criteria. For example, a 1% targetFER may be used for the data stream.

The outer loop setpoint adjustment for a particular data stream istypically achieved by (1) receiving, demodulating, and decoding the datastream to recover the transmitted data (block 722), (2) determining thestatus of each received frame as being decoded correctly (good) or inerror (erased) (also in block 722), and (3) adjusting the setpoint(block 724) based on the frame status (and possibly along with someother information indicative of the “goodness” of, or the confidence in,the decoded data). If a frame is decoded correctly, then the receivedsignal quality is likely to be higher than necessary and the setpointmay be reduced slightly, which then causes inner loop 710 to reduce thetransmit power for the data stream. Alternatively, if a frame is decodedin error, then the received signal quality is likely to be lower thannecessary and the setpoint may be increased, which then causes innerloop 710 to increase the transmit power for the data stream.

By controlling the manner in which the channel's setpoint is adjusted,different power control characteristics and performance levels may beobtained. For example, the target FER may be achieved by properlyselecting the amount of upward adjustment in the setpoint for a badframe, the amount of downward adjustment for a good frame, the requiredelapsed time between successive increases in the setpoint, and so on.The target FER (i.e., the long-term FER) may be set as ΔD/(ΔD+ΔU), whereΔU is the amount of increase in the setpoint for an erased frame, and ΔDis the amount of decrease in the setpoint for a good frame. The absolutesizes for ΔU and ΔD also determine the responsiveness of the powercontrol mechanism to sudden changes in the communication channel.

FIG. 8 is a block diagram of a specific embodiment of a portion of thedownlink and uplink power control mechanisms implemented at a terminal.In this embodiment, downlink and uplink power control loops 810 and 820are used for downlink and uplink power control, respectively, for theterminal Power control loops 810 and 820 may be implemented withincontroller 270 b, as shown in FIG. 8, or by some other units.

For downlink power control (DL PC), downlink power control loop 810provides to a multiplexer 814 within TX data processor 278 b DL PCcommands used to control the transmit power of a downlink transmissionto the terminal. Multiplexer 814 also receives uplink coded data from anencoder/interleaver 812, multiplexes the DL PC commands with the codeddata, and provides the multiplexed coded data and DL PC commands tospreader 510 within modulator 280 b. The DL PC commands may bemultiplexed with the coded data using various schemes such as, forexample, by replacing some of the coded bits in accordance with aparticular (e.g., pseudo-random) puncturing scheme.

Spreader 510 processes (e.g., spreads) the coded data and DL PC commandsand provides modulated data. Multiplier 530 a then scales the modulateddata with the user's gain variable, G_(u)(k). This gain variable,G_(u)(k), controls the uplink transmit power and is adjusted by uplinkpower control loop 820. The scaled data is further processed bytransmitter 254 to generate an uplink modulated signal, which is thentransmitted to the serving cell/sector(s) with which the terminal iscommunicating.

At each serving cell/sector, the uplink modulated signal from theterminal is processed to recover the DL PC commands, which are then usedto adjust the downlink transmit power to the terminal.

Also for the downlink power control, the downlink modulated signal(s)from the serving cell/sector(s) are received and processed (e.g.,conditioned and digitized) by receiver 254, further processed (e.g.,despread) by demodulator 260 b, and decoded by RX data processor 262 b.Demodulator 260 b further estimates the SNR of the received demodulateddata (or pilot) and provides the SNR estimates to downlink power controlloop 810, which also receives from RX data processor 262 b the status ofeach received frame. Downlink power control loop 810 may then adjust thedownlink setpoint based on the target FER and the received frame status,and further provides DL PC commands based on the setpoint and the SNRestimates.

The SNR may be estimated at the receiver unit based on varioustechniques. Some of these techniques are described in U.S. Pat. No.5,799,005, entitled “System and Method for Determining Received PilotPower and Path Loss in a CDMA Communication System,” issued Aug. 25,1998, and U.S. Pat. No. 5,903,554, entitled “Method and Apparatus forMeasuring Link Quality in a Spread Spectrum Communication System,”issued May 11, 1999, both of which are incorporated herein by reference.

For uplink power control (UL PC), the UL PC commands transmitted by theserving cell/sector(s) are received, recovered, and demultiplexed bydemodulator 260 b, which then provides the commands to uplink powercontrol loop 820. Loop 820 then determines an appropriate delta powervalue (e.g., +0.5 dB, −0.5 dB, zero, or some other value) correspondingto each received UL PC command, accumulates the delta power value withthe current transmit power value, and provides the gain value, G_(u)(k),corresponding to the updated transmit power value.

The power control for the downlink and uplink may each be implementedusing the power control techniques described in the aforementioned U.S.Pat. Nos. 5,799,005 and 5,903,554, 5,056,109, and 5,265,119, bothentitled “Method and Apparatus for Controlling Transmission Power in aCDMA Cellular Mobile Telephone System,” respectively issued Oct. 8, 1991and Nov. 23, 1993, and U.S. Pat. No. 6,097,972, entitled “Method andApparatus for Processing Power Control Signals in CDMA Mobile TelephoneSystem,” issued Aug. 1, 2000, all of which are incorporated herein byreference.

Variable Rate

Variable rate data may be supported on the downlink and/or uplink viapower scaling and spreading adjustment. If a spreading factor of SF isused for a data rate of r₁, then lower data rates may be accommodated bypower scaling the data such that the transmit power per frame isproportional to the data rate. For example, if SF=128 for r₁=9.6 Kbpsthen data rates of 1.2, 2.4, 4.8, and 9.6 Kbps (which may be produced bya vocoder) may be supported by (1) repeat coding by a factor of two a4.8 Kbps data rate frame and allocating half of the transmit power usedfor a 9.6 Kbps data rate frame, (2) repeat coding by a factor of four a2.4 Kbps data rate frame and allocating a quarter of the transmit powerused for a 9.6 Kbps data rate frame, and (3) repeat coding by a factorof eight a 1.2 Kbps data rate frame and allocating an eighth of thetransmit power used for a 9.6 Kbps data rate frame.

Higher data rates may also be supported by reducing the spreading gainand scaling up the transmit power. In one embodiment, multiple spreadingcodes are allocated for higher data rates. Since the data is spread overall selected sub-bands by each spreading code, the full diversityafforded by the wideband channel is retained by the use of multiplespreading codes for higher data rates. In another embodiment, differentfractional portions of the system bandwidth are allocated to differentdata symbols. For example, if one data symbol is transmitted over all Msub-bands for a data rate of 9.6 Kbps, then two data symbols may betransmitted over M sub-bands for a data rate of 19.2 Kbps by spreadingeach data symbol with a spreading code of half the length (M/2) andtransmitting each spread data symbol over M/2 sub-bands. Each OFDMsymbol would then include two data symbols, each having a length of M/2.The sub-bands may be allocated to the data symbols such that they areinterleaved (e.g., odd-numbered sub-bands may be allocated to one datasymbol and even-numbered sub-bands may be allocated to the other datasymbol) or based on some other sub-band assignment scheme. For bothembodiments, the highest data rate may be supported by allocating allavailable spreading codes to the user data.

As the data rate increases, the spreading may be reduced proportionatelyto accommodate the higher rate data. When the data rate reaches 1bps/Hz, the spreading effectively disappears (i.e., is not used) and theresultant modulated output resembles the conventional OFDM scheme. Thus,the techniques described herein allow data to be modulated using ahybrid OFDM-CDMA scheme at lower data rates (i.e., less than 1 bps/Hz)or a pure OFDM scheme at higher data rates (i.e., 1 bps/Hz and beyond).In the pure OFDM scheme, the pilot is not spread but may be distributedin a subset of sub-bands, as described below.

Handoff

Soft and softer handoff may be supported by the system. On the downlink,a terminal may receive the pilots from a number of cells/sectors. If itis determined that the strength of the pilots from two or morecells/sectors is adequate to support soft/softer handoff operation, thenthe terminal may report to the current serving cell/sector(s) the newcell/sector(s) to add to the soft/softer handoff list. The newly addedcell/sector(s) would then begin transmitting the same user data as thecurrent serving cell/sector(s). The terminal would then receive thedownlink modulated signals from all serving cell/sectors, demodulateeach received signal, and combine the separate downlink transmissions.Soft combining may be used whereby the demodulated symbols from eachserving cell/sector may be weighted by the received signal strength forthe cell/sector prior to being combined with the weighted demodulatedsymbols from the other serving cell/sector(s).

On the uplink, the uplink modulated signal from a particular terminalmay be received by multiple serving cells/sectors. Each servingcell/sector processes the uplink modulated signal and provides decodeddata (or possibly demodulated data) to a central entity (e.g., a basestation controller) responsible for frame selection and uplink powercontrol. If the serving sectors belong to the same cell, then thedemodulated data from the sectors may be (soft) combined prior decoding,which may provide improved performance for softer handoff. And if theserving sectors belong to different cells, then each sector may providea decoded data frame for each frame interval to the central entity,which then selects the best frame as the decoded result. Alternatively,each serving sector may provide demodulated data to the central entity,which may then (soft) combine the demodulated data and perform thedecoding.

For uplink power control in soft/softer handoff, the UL power controlcommands received at the terminal from multiple cells/sectors for eachpower control interval may be combined and used to adjust the uplinktransmit power. An “OR-of-the-DOWNs” rule may be used whereby theterminal reduces its transmit power if any one of the UL power controlcommands requests a reduction in the transmit power.

For downlink power control in soft/softer handoff, the DL power controlcommands sent by the terminal are received at the serving cells/sectors,and each cell/sector adjust the downlink transmit power accordinglybased on the received commands. The DL power control commands receivedby each serving cell/sector may also be provided to the central entity,which may (soft) combine these commands to provide improved estimates ofthe transmitted commands. The combined commands may then be sent to allserving cell/sector(s), each of which may then adjust the downlinktransmit power to the terminal.

Various mechanisms and control features may be used to supportsoft/softer handoff. For example, mechanisms and control features may beprovided to guide terminals in and out of handoff, including thresholdsto add and drop cell/sector(s) from soft/softer handoff, timers toadd/drop cell/sector(s), hysteresis to prevent a cell/sector from beingalternately added and dropped due to fluctuating channel conditions, andso on.

Soft handoff is described in further detail in U.S. Pat. No. 5,101,501entitled “Method and System for Providing a Soft Handoff inCommunications in a CDMA Cellular Telephone System,” issued Mar. 31,1992, and U.S. Pat. No. 5,267,261, entitled “Mobile Station AssistedSoft Handoff in a CDMA Cellular Communications System,” issued Nov. 30,1993, both of which are incorporated herein by reference.

Pilot

As noted above, a pilot may be transmitted from a transmitter unit andused at the receiver units for various functions. Various pilottransmission schemes may be implemented and are within the scope of theinvention.

In one pilot transmission scheme, pilot data is spread (e.g., in thefrequency domain) with a known spreading code (e.g., Walsh code 0) andscaled with a particular gain. The spread pilot data may further becovered with a cover code (as shown in FIG. 3) or not covered at all (asshown in FIG. 5). If a unique cover code is used by each transmitterunit (e.g., each cell/sector), then the receiver units (e.g., theterminals) may be able to discriminate and distinguish the differenttransmitters of the pilots by their unique cover codes.

The cover codes for the transmitter units may be PN sequences generatedbased on a particular set of one or more polynomials but havingdifferent offsets, similar to the PN sequences used in IS-95 andcdma2000. For fast acquisition and synchronization, the length of thecover codes may be selected based on some defined relationship to theduration of a transmission symbol (if cyclic prefix is used) or theduration of an OFDM symbol (if cyclic prefix is not used). For example,the cover code length may be selected to be a multiple integer of thetransmission symbol duration (if cyclic prefix is used) or a multipleinteger of the OFDM symbol duration (if cyclic prefix is not used).

In another pilot transmission scheme, a subset of the availablesub-bands is reserved and used to transmit pilot tones (i.e., no userdata). The subset of sub-bands may be changed (i.e., hopped) in adeterministic manner or a pseudo-random manner to allow the entirechannel response to be sampled over multiple OFDM symbols. Therelationship between the sub-bands allocated for the pilot and thehopping pattern may be the same for all transmitter units (e.g., allcells/sectors). Alternative, each transmitter unit (e.g., each sector orcell) may be associated with a respective relationship between theallocated pilot sub-bands and hopping pattern, which may then be used toidentify the transmitter unit.

In yet another pilot transmission scheme, pilot data may be timedivision multiplexed (TDM) with user and overhead data to implement aTDM pilot structure. In this case, the pilot may be time divisionmultiplexed at fixed intervals with the other data (e.g., one pilotsymbol for each NP data symbols), or may be multiplexed in a non-uniformmanner (e.g., inserted at pseudo-randomly selected time intervals. TheTDM pilot structure may also be implemented similar to that described inthe IS-856 or W-CDMA standard.

In general, a pilot may be transmitted such that the receiver units areable to estimate the channel response for each sub-band used for datatransmission.

The modulation, demodulation, multiple-access, rate control, powercontrol, soft/softer handoff, and other techniques described herein maybe implemented by various means. For example, these techniques may beimplemented in hardware, software, or a combination thereof. For ahardware implementation, the elements used to implement any one or acombination of the techniques may be implemented within one or moreapplication specific integrated circuits (ASICs), digital signalprocessors (DSPs), digital signal processing devices (DSPDs),programmable logic devices (PLDs), field programmable gate arrays(FPGAs), processors, controllers, micro-controllers, microprocessors,other electronic units designed to perform the functions describedherein, or a combination thereof.

For a software implementation, any one or a combination of thetechniques may be implemented with modules (e.g., procedures, functions,and so on) that perform the functions described herein. The softwarecodes may be stored in a memory unit (e.g., memory 232 or 272 in FIG. 2)and executed by a processor (e.g., controller 230 or 270). The memoryunit may be implemented within the processor or external to theprocessor, in which case it can be communicatively coupled to theprocessor via various means as it known in the art.

Headings are included herein for reference and to aid in locatingcertain sections. These heading are not intended to limit the scope ofthe concepts described therein under, and these concepts may haveapplicability in other sections throughout the entire specification.

The previous description of the disclosed embodiments is provided toenable any person skilled in the art to make or use the presentinvention. Various modifications to these embodiments will be readilyapparent to those skilled in the art, and the generic principles definedherein may be applied to other embodiments without departing from thespirit or scope of the invention. Thus, the present invention is notintended to be limited to the embodiments shown herein but is to beaccorded the widest scope consistent with the principles and novelfeatures disclosed herein.

What is claimed is:
 1. An apparatus for processing data for transmissionover a wireless communication channel in a multiple-access OFDM-CDMAsystem, comprising: means for coding a data stream in accordance with aparticular coding scheme to provide a stream of data symbols; means forspreading the data symbol stream in a frequency domain with one or morespreading codes to provide spread data, wherein the one or morespreading codes are selected from a set of available spreading codes andassigned to the data stream; means for transforming the spread data inaccordance with a particular transformation to provide a stream of OFDMsymbols; means for scaling the stream of OFDM symbols in accordance witha particular gain selected for the data stream, wherein the particulargain is based upon an estimated signal quality; means for covering thescaled OFDM symbols with a cover code; and means for transmitting thecovered OFDM symbols over the communication channel.
 2. The apparatus ofclaim 1, further comprising: means for appending a cyclic prefix to eachOFDM symbol to provide a corresponding transmission symbol, whereintransmission symbols are scaled and transmitted over the communicationchannel.
 3. The apparatus of claim 1, further comprising: means foradjusting the spreading based on a data rate of the data stream.
 4. Theapparatus of claim 1, further comprising: means for adjusting the gainto adjust transmit power for the data stream.
 5. The apparatus of claim1, wherein the scaled OFDM symbols are transmitted on a downlink from abase station to a terminal.
 6. The apparatus of claim 1, wherein thescaled OFDM symbols are transmitted on an uplink from a terminal to abase station.
 7. An apparatus for processing data for transmission overa wireless communication channel in a multiple-access OFDM-CDMA system,comprising: means for coding a data stream in accordance with aparticular coding scheme to provide a stream of data symbols; means forspreading the data symbol stream in a frequency domain with one or morespreading codes to provide spread data, wherein the one or morespreading codes are selected from a set of available spreading codes andassigned to the data stream; means for transforming the spread data inaccordance with an inverse Fourier transform to provide a stream of OFDMsymbols; means for appending a cyclic prefix to each OFDM symbol toprovide a corresponding transmission symbol; means for scaling eachtransmission symbol in accordance with a particular gain selected forthe data stream, wherein the particular gain is based upon an estimatedsignal quality responsive to a power control command of a particularmultiple access power control scheme; means for covering scaledtransmission symbols with a cover code; and means for transmitting thecovered transmission symbols over the communication channel.
 8. Anapparatus for processing data for transmission over a wirelesscommunication channel, comprising: means for coding a data stream toprovide a stream of data symbols; means for applying one or morespreading codes to the stream of data symbols in a frequency domain toprovide spread data; means for generating a stream of OFDM symbols fromthe spread data; means for applying a gain to the stream of OFDM symbolsbased upon information regarding a communication channel over which atleast some of the stream of OFDM symbols are to be transmitted, whereinthe information regarding a communication channel comprises an estimatedsignal quality of symbols transmitted over the communication channel;and means for adjusting the spreading based on a data rate of the streamof data symbols.
 9. The apparatus of claim 8, wherein the informationregarding a communication channel comprises feedback from a receiver ofsymbols over the communication channel.
 10. The apparatus of claim 8,wherein the means for adjusting the spreading includes means forassigning a plurality of spreading codes to the stream of data symbols.11. The apparatus of claim 8, wherein the means for applying one or morespreading codes is effectively not performed when the data rate of thedata stream reaches a particular threshold data rate.
 12. Acomputer-program storage apparatus for processing data for transmissionover a wireless communication channel in a multiple-access OFDM-CDMAsystem comprising a memory having one or more software modules storedthereon, the one or more software modules being executable by one ormore processors and the one or more software modules comprising: codefor coding a data stream in accordance with a particular coding schemeto provide a stream of data symbols; code for spreading the data symbolstream in a frequency domain with one or more spreading codes to providespread data, wherein the one or more spreading codes are selected from aset of available spreading codes and assigned to the data stream; codefor transforming the spread data in accordance with a particulartransformation to provide a stream of OFDM symbols; code for scaling thestream of OFDM symbols in accordance with a particular gain selected forthe data stream, wherein the particular gain is based upon an estimatedsignal quality; code for covering the scaled OFDM symbols with a covercode; and code for transmitting the covered OFDM symbols over thecommunication channel.
 13. The apparatus of claim 12, furthercomprising: code for appending a cyclic prefix to each OFDM symbol toprovide a corresponding transmission symbol, wherein transmissionsymbols are scaled and transmitted over the communication channel. 14.The apparatus of claim 12, further comprising: code for adjusting thespreading based on a data rate of the data stream.
 15. The apparatus ofclaim 12, further comprising: code for adjusting the gain to adjusttransmit power for the data stream.
 16. The apparatus of claim 12,wherein the scaled OFDM symbols are transmitted on a downlink from abase station to a terminal.
 17. The apparatus of claim 12, wherein thescaled OFDM symbols are transmitted on an uplink from a terminal to abase station.
 18. A computer-program storage apparatus for processingdata for transmission over a wireless communication channel in amultiple-access OFDM-CDMA system comprising a memory having one or moresoftware modules stored thereon, the one or more software modules beingexecutable by one or more processors and the one or more softwaremodules comprising: code for coding a data stream in accordance with aparticular coding scheme to provide a stream of data symbols; code forspreading the data symbol stream in a frequency domain with one or morespreading codes to provide spread data, wherein the one or morespreading codes are selected from a set of available spreading codes andassigned to the data stream; code for transforming the spread data inaccordance with an inverse Fourier transform to provide a stream of OFDMsymbols; code for appending a cyclic prefix to each OFDM symbol toprovide a corresponding transmission symbol; code for scaling eachtransmission symbol in accordance with a particular gain selected forthe data stream, wherein the particular gain is based upon an estimatedsignal quality responsive to a power control command of a particularmultiple access power control scheme; code for covering scaledtransmission symbols with a cover code; and code for transmitting thecovered transmission symbols over the communication channel.
 19. Acomputer-program storage apparatus for processing data for transmissionover a wireless communication channel comprising a memory having one ormore software modules stored thereon, the one or more software modulesbeing executable by one or more processors and the one or more softwaremodules comprising: code for coding a data stream to provide a stream ofdata symbols; code for applying one or more spreading codes to thestream of data symbols in a frequency domain to provide spread data;code for generating a stream of OFDM symbols from the spread data; codefor applying a gain to the stream of OFDM symbols based upon informationregarding a communication channel over which at least some of the streamof OFDM symbols are to be transmitted, wherein the information regardinga communication channel comprises an estimated signal quality of symbolstransmitted over the communication channel; and code for adjusting thespreading based on a data rate of the stream of data symbols.
 20. Theapparatus of claim 19, wherein the information regarding a communicationchannel comprises feedback from a receiver of symbols over thecommunication channel.
 21. The apparatus of claim 19, wherein the codefor adjusting the spreading includes code for assigning a plurality ofspreading codes to the stream of data symbols.
 22. The apparatus ofclaim 19, wherein the code for applying one or more spreading codes iseffectively not performed when the data rate of the data stream reachesa particular threshold data rate.